/* 
 * Copyright (C), 2016-2020, 厦门盈欣宝金融信息服务有限公司
 * Project Name :bootmybatis
 * File Name: com.example.bootmybatis.service.impl
 * Encoding UTF-8 
 * Version: 1.0 
 * Date: 2018-06-07 16:31
 * History:  
 * 1. Date: 2018-06-07
 *    Author: guojm 
 *    Modification: 新建
 * 2. ...
 */
package org.easytouseit.mybatis.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.easytouseit.mybatis.mapper.UserMapper;
import org.easytouseit.mybatis.model.UserDomain;
import org.easytouseit.mybatis.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @author guojm
 * @version V1.0
 * @date 2018-06-07
 */
@Service(value = "userService")
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    @Override
    public int addUser(UserDomain user) {
        return userMapper.insert(user);
    }
    /*
       * 这个方法中用到了我们开头配置依赖的分页插件pagehelper
       * 很简单，只需要在service层传入参数，然后将参数传递给一个插件的一个静态方法即可；
       * pageNum 开始页数
       * pageSize 每页显示的数据条数
       * */
    @Override
    public PageInfo<UserDomain> findAllUser(int pageNum, int pageSize) {
        //将参数传给这个方法就可以实现物理分页了，非常简单。
        PageHelper.startPage(pageNum, pageSize);
        List<UserDomain> userDomains = userMapper.selectUsers();
        PageInfo result = new PageInfo(userDomains);
        return result;
    }
}
